Internet access is a simple service, generally relying on flat rate billing model, i.e. subscribers are allowed to send and receive an unlimited amount of traffic for a fixed monthly fee. In return subscribers get a best-effort service only, i.e. the Service Level Agreement (SLA) defines the maximum access bandwidth only with no guarantees for the subscribers.
The most common Internet application contributing to excessive usage on the Internet today is file-sharing, most often implemented in a peer-to-peer system. Peer-to-peer (P2P) file-sharing applications allow users on the Internet to access files located on arbitrary computers participating in the file-sharing network. Some of the more common file-sharing programs are BitTorrent, KaZaa, Gnutella, eDonkey, eMule, Fasttrack and Morpheus.
Peer-to-peer file-sharing traffic now accounts for between 65 and 80 percent of the global Internet traffic. This traffic is mostly generated by so-called “power-users”, who generally represent a small percentage of the subscribers. Managing the peer-to-peer traffic generated by power users is a significant issue for operators. The available bandwidth per user decreases in case many subscribers use such file-sharing applications. This results in poor overall broadband service and in increased costs due to increased help-desk calls, subscriber turnover, and high peering costs. When most of the peer-to-peer content resides outside of their network boundaries, operators quickly find themselves losing money when their subscribers download content from remote operators across transit networks.
Moreover, these P2P file-sharing networks function properly only if all participating users share content for other participants. In other words, users must upload as much as download. As a result, a subscribers participating in a P2P file sharing network generate upload traffic proportional to their download traffic (while in the case of regular Internet users the upload traffic is magnitudes lower than download traffic).
There are two main approaches to reducing the overall traffic generated by peer-to-peer file-sharing applications: traffic engineering and content caching.
With traffic engineering, operators install dedicated equipment on peer edge routers and access edge routers. These devices are capable of monitoring flows generated by peer-to-peer users and intervene if necessary. Intervention can either be traffic shaping (e.g. reducing overall bandwidth of the flow), remarking or complete blocking of the flow. This is a viable solution and is in fact used by many fixed operators today. However, this solution is uncooperative from the subscribers' point of view and must be preceded by unattractive service specifications, e.g. traffic ‘buckets’. In the long run, subscribers are likely to part from the operator as their file sharing needs are not fulfilled as expected.
Caching is also done by installing dedicated equipment: cache servers inside the core network, and traffic redirectors on edge routers. Traffic redirectors detect both peer-to-peer requests and transfers, and redirect them through the cache server. If the cache server contains the requested content, the content is served to the subscriber from the cache instead of the original source beyond edge routers. If the content is not cached, the request is fulfilled by the original source, and the cache server stores a copy of the incoming content. Caching can be done transparently—where subscribers do not know of the cache servers—and cooperatively—where subscribers willingly use the operator's cache servers as this is beneficial for the subscribers too (because of lower end-to-end latency and better throughput).
There are existing caching solutions (see e.g. US 2002/0133621, WO 02/31615, EP-A-1714437 and WO 2005/079020) that can be implemented within ISP networks. The primary aim of these solutions is to reduce both inbound and outbound peer-to-peer traffic at the edge routers. The motivation is that transit peering represents the highest transmission-related OPEX (operating expense) for most of existing Tier-2 or Tier-3 ISPs. These operators generally own their access and core transport infrastructure.
These solutions place a cache server (or cache cluster) into the core network and serve outgoing peer-to-peer requests from the cache server if possible. Also incoming peer-to-peer requests are served by these servers thus unburdening limited upload bandwidth of subscribers, and access networks in general.
Akamai (www.akamai.com) provides a well-known service for mirroring and caching server content. Akamai works by resolving the DNS name of customer content to an IP address of an Akamai server. The Akamai server is automatically picked depending on the type of content and the user's network location, thus it provides load distribution for the network and for the servers (i.e. the customer does not need many high capacity servers).
The approach of Akamai is not suitable for P2P file sharing applications as it relies on DNS resolution. However, the distributed overlay of P2P systems directly gives back the peer's IP address where the content can be found. So, instead of DNS, the P2P overlay itself resolves content queries to peers. As there is no DNS query during content search, Akamai has no chance to intervene.
The high traffic levels generated by subscribers, in particular those operating file-sharing services, place a severe technical demand on operators, and it is desirable to provide workable solutions. This is particularly the case for where there is a high cost associated with carrying the Internet traffic generated by the subscribers, such as for SAE/LTE (System Architecture Evolution/Long Term Evolution) and FMC (Fixed Mobile Convergence) operators.